@connectedbits/react-native-image-picker 2.4.15-android-legacy → 2.4.16-rc0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/.gradle/5.4.1/executionHistory/executionHistory.bin +0 -0
- package/android/.gradle/5.4.1/executionHistory/executionHistory.lock +0 -0
- package/android/.gradle/5.4.1/fileHashes/fileHashes.bin +0 -0
- package/android/.gradle/5.4.1/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/5.4.1/fileHashes/resourceHashesCache.bin +0 -0
- package/android/.gradle/5.4.1/javaCompile/classAnalysis.bin +0 -0
- package/android/.gradle/5.4.1/javaCompile/jarAnalysis.bin +0 -0
- package/android/.gradle/5.4.1/javaCompile/javaCompile.lock +0 -0
- package/android/.gradle/5.4.1/javaCompile/taskHistory.bin +0 -0
- package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/android/build.gradle +0 -3
- package/android/gradle.properties +2 -2
- package/android/src/main/java/com/imagepicker/FileProvider.java +1 -1
- package/android/src/main/java/com/imagepicker/ImagePickerModule.java +31 -10
- package/android/src/main/java/com/imagepicker/ImagePickerPackage.java +1 -1
- package/android/src/main/java/com/imagepicker/ResponseHelper.java +1 -1
- package/android/src/main/java/com/imagepicker/media/ImageConfig.java +2 -2
- package/android/src/main/java/com/imagepicker/permissions/OnImagePickerPermissionsCallback.java +1 -1
- package/android/src/main/java/com/imagepicker/permissions/PermissionUtils.java +3 -3
- package/android/src/main/java/com/imagepicker/utils/ButtonsHelper.java +2 -2
- package/android/src/main/java/com/imagepicker/utils/MediaUtils.java +2 -2
- package/android/src/main/java/com/imagepicker/utils/ReadableMapUtils.java +1 -1
- package/android/src/main/java/com/imagepicker/utils/RealPathUtil.java +3 -3
- package/android/src/main/java/com/imagepicker/utils/UI.java +3 -3
- package/android/src/test/java/com/imagepicker/testing/TestableImagePickerModule.java +3 -3
- package/package.json +1 -1
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/android/build.gradle
CHANGED
|
@@ -52,9 +52,6 @@ repositories {
|
|
|
52
52
|
|
|
53
53
|
dependencies {
|
|
54
54
|
api "com.facebook.react:react-native:+" // From node_modules
|
|
55
|
-
implementation 'com.android.support:support-annotations:28.0.0'
|
|
56
|
-
implementation 'com.android.support:support-v4:28.0.0'
|
|
57
|
-
implementation 'com.android.support:support-compat:28.0.0'
|
|
58
55
|
|
|
59
56
|
testImplementation('org.robolectric:robolectric:4.3.1') {
|
|
60
57
|
// https://github.com/robolectric/robolectric/issues/5245
|
|
@@ -13,10 +13,10 @@ import android.net.Uri;
|
|
|
13
13
|
import android.os.Build;
|
|
14
14
|
import android.provider.MediaStore;
|
|
15
15
|
import android.provider.Settings;
|
|
16
|
-
import
|
|
17
|
-
import
|
|
18
|
-
import
|
|
19
|
-
import
|
|
16
|
+
import androidx.annotation.NonNull;
|
|
17
|
+
import androidx.annotation.StyleRes;
|
|
18
|
+
import androidx.core.app.ActivityCompat;
|
|
19
|
+
import androidx.appcompat.app.AlertDialog;
|
|
20
20
|
|
|
21
21
|
import android.util.Base64;
|
|
22
22
|
import android.content.pm.PackageManager;
|
|
@@ -559,8 +559,16 @@ public class ImagePickerModule extends ReactContextBaseJavaModule
|
|
|
559
559
|
@NonNull final Callback callback,
|
|
560
560
|
@NonNull final int requestCode)
|
|
561
561
|
{
|
|
562
|
-
|
|
563
|
-
|
|
562
|
+
int writePermission = 0;
|
|
563
|
+
int libraryPermission = 0;
|
|
564
|
+
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU) {
|
|
565
|
+
writePermission = ActivityCompat.checkSelfPermission(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE);
|
|
566
|
+
libraryPermission = writePermission;
|
|
567
|
+
} else {
|
|
568
|
+
writePermission = PackageManager.PERMISSION_GRANTED;
|
|
569
|
+
libraryPermission = ActivityCompat.checkSelfPermission(activity, Manifest.permission.READ_MEDIA_IMAGES);
|
|
570
|
+
}
|
|
571
|
+
|
|
564
572
|
final int cameraPermission = ActivityCompat
|
|
565
573
|
.checkSelfPermission(activity, Manifest.permission.CAMERA);
|
|
566
574
|
|
|
@@ -568,7 +576,7 @@ public class ImagePickerModule extends ReactContextBaseJavaModule
|
|
|
568
576
|
|
|
569
577
|
switch (requestCode) {
|
|
570
578
|
case REQUEST_PERMISSIONS_FOR_LIBRARY:
|
|
571
|
-
permissionsGranted =
|
|
579
|
+
permissionsGranted = libraryPermission == PackageManager.PERMISSION_GRANTED;
|
|
572
580
|
break;
|
|
573
581
|
case REQUEST_PERMISSIONS_FOR_CAMERA:
|
|
574
582
|
permissionsGranted = cameraPermission == PackageManager.PERMISSION_GRANTED && writePermission == PackageManager.PERMISSION_GRANTED;
|
|
@@ -577,7 +585,12 @@ public class ImagePickerModule extends ReactContextBaseJavaModule
|
|
|
577
585
|
|
|
578
586
|
if (!permissionsGranted)
|
|
579
587
|
{
|
|
580
|
-
|
|
588
|
+
Boolean dontAskAgain = false;
|
|
589
|
+
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU) {
|
|
590
|
+
dontAskAgain = ActivityCompat.shouldShowRequestPermissionRationale(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE) && ActivityCompat.shouldShowRequestPermissionRationale(activity, Manifest.permission.CAMERA);
|
|
591
|
+
} else {
|
|
592
|
+
dontAskAgain = ActivityCompat.shouldShowRequestPermissionRationale(activity, Manifest.permission.READ_MEDIA_IMAGES) && ActivityCompat.shouldShowRequestPermissionRationale(activity, Manifest.permission.CAMERA);
|
|
593
|
+
}
|
|
581
594
|
|
|
582
595
|
if (dontAskAgain)
|
|
583
596
|
{
|
|
@@ -626,10 +639,18 @@ public class ImagePickerModule extends ReactContextBaseJavaModule
|
|
|
626
639
|
String[] PERMISSIONS;
|
|
627
640
|
switch (requestCode) {
|
|
628
641
|
case REQUEST_PERMISSIONS_FOR_LIBRARY:
|
|
629
|
-
|
|
642
|
+
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU) {
|
|
643
|
+
PERMISSIONS = new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE};
|
|
644
|
+
} else {
|
|
645
|
+
PERMISSIONS = new String[]{Manifest.permission.READ_MEDIA_IMAGES};
|
|
646
|
+
}
|
|
630
647
|
break;
|
|
631
648
|
case REQUEST_PERMISSIONS_FOR_CAMERA:
|
|
632
|
-
|
|
649
|
+
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU) {
|
|
650
|
+
PERMISSIONS = new String[]{Manifest.permission.CAMERA,Manifest.permission.WRITE_EXTERNAL_STORAGE};
|
|
651
|
+
} else {
|
|
652
|
+
PERMISSIONS = new String[]{Manifest.permission.CAMERA};
|
|
653
|
+
}
|
|
633
654
|
break;
|
|
634
655
|
default:
|
|
635
656
|
PERMISSIONS = new String[]{};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
package com.imagepicker.media;
|
|
2
2
|
|
|
3
|
-
import
|
|
4
|
-
import
|
|
3
|
+
import androidx.annotation.NonNull;
|
|
4
|
+
import androidx.annotation.Nullable;
|
|
5
5
|
|
|
6
6
|
import android.net.Uri;
|
|
7
7
|
import android.webkit.MimeTypeMap;
|
|
@@ -2,9 +2,9 @@ package com.imagepicker.permissions;
|
|
|
2
2
|
|
|
3
3
|
import android.app.Activity;
|
|
4
4
|
import android.content.DialogInterface;
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
5
|
+
import androidx.annotation.NonNull;
|
|
6
|
+
import androidx.annotation.Nullable;
|
|
7
|
+
import androidx.appcompat.app.AlertDialog;
|
|
8
8
|
|
|
9
9
|
import com.facebook.react.bridge.ReadableMap;
|
|
10
10
|
import com.facebook.react.bridge.ReadableNativeMap;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
package com.imagepicker.utils;
|
|
2
2
|
|
|
3
|
-
import
|
|
4
|
-
import
|
|
3
|
+
import androidx.annotation.NonNull;
|
|
4
|
+
import androidx.annotation.Nullable;
|
|
5
5
|
|
|
6
6
|
import com.facebook.react.bridge.ReadableArray;
|
|
7
7
|
import com.facebook.react.bridge.ReadableMap;
|
|
@@ -6,8 +6,8 @@ import android.graphics.BitmapFactory;
|
|
|
6
6
|
import android.graphics.Matrix;
|
|
7
7
|
import android.media.ExifInterface;
|
|
8
8
|
import android.os.Environment;
|
|
9
|
-
import
|
|
10
|
-
import
|
|
9
|
+
import androidx.annotation.NonNull;
|
|
10
|
+
import androidx.annotation.Nullable;
|
|
11
11
|
|
|
12
12
|
import com.facebook.react.bridge.ReadableMap;
|
|
13
13
|
import com.imagepicker.ResponseHelper;
|
|
@@ -9,9 +9,9 @@ import android.provider.DocumentsContract;
|
|
|
9
9
|
import android.provider.MediaStore;
|
|
10
10
|
import android.content.ContentUris;
|
|
11
11
|
import android.os.Environment;
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
import
|
|
12
|
+
import androidx.annotation.NonNull;
|
|
13
|
+
import androidx.annotation.Nullable;
|
|
14
|
+
import androidx.core.content.FileProvider;
|
|
15
15
|
|
|
16
16
|
import java.io.File;
|
|
17
17
|
|
|
@@ -3,9 +3,9 @@ package com.imagepicker.utils;
|
|
|
3
3
|
import android.content.Context;
|
|
4
4
|
import android.content.DialogInterface;
|
|
5
5
|
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
6
|
+
import androidx.annotation.NonNull;
|
|
7
|
+
import androidx.annotation.Nullable;
|
|
8
|
+
import androidx.appcompat.app.AlertDialog;
|
|
9
9
|
import android.widget.ArrayAdapter;
|
|
10
10
|
|
|
11
11
|
import com.facebook.react.bridge.ReadableMap;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
package com.imagepicker.testing;
|
|
2
2
|
|
|
3
3
|
import android.net.Uri;
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
4
|
+
import androidx.annotation.NonNull;
|
|
5
|
+
import androidx.annotation.Nullable;
|
|
6
|
+
import androidx.annotation.StyleRes;
|
|
7
7
|
|
|
8
8
|
import com.facebook.react.bridge.Callback;
|
|
9
9
|
import com.facebook.react.bridge.ReactApplicationContext;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@connectedbits/react-native-image-picker",
|
|
3
|
-
"version": "2.4.
|
|
3
|
+
"version": "2.4.16-rc0",
|
|
4
4
|
"description": "A React Native module that allows you to use native UI to select media from the device library or directly from the camera",
|
|
5
5
|
"react-native": "src/index.ts",
|
|
6
6
|
"types": "lib/typescript/index.d.ts",
|