@@ -3,10 +3,10 @@ import { Platform, PermissionsAndroid } from 'react-native';
3
3
import type { Rationale } from 'react-native/Libraries/PermissionsAndroid/PermissionsAndroid' ;
4
4
import { CameraRoll } from '@react-native-camera-roll/camera-roll' ;
5
5
import RNFetchBlob from 'rn-fetch-blob' ;
6
- import invariant from 'invariant' ;
7
6
8
7
import type { Auth } from '../api/transportTypes' ;
9
8
import { getMimeTypeFromFileExtension } from '../utils/url' ;
9
+ import { androidSdkVersion } from '../reactNativeUtils' ;
10
10
11
11
/**
12
12
* Request permission WRITE_EXTERNAL_STORAGE if needed or throw if can't get it.
@@ -18,17 +18,7 @@ import { getMimeTypeFromFileExtension } from '../utils/url';
18
18
* as a toast.
19
19
*/
20
20
export const androidEnsureStoragePermission = async ( rationale : Rationale ) : Promise < void > => {
21
- invariant (
22
- Platform . OS === 'android' ,
23
- 'androidEnsureStoragePermission should only be called on Android' ,
24
- ) ;
25
- // Flow isn't refining `Platform` to a type that corresponds to values
26
- // we'll see on Android. We do expect `Platform.Version` to be a number on
27
- // Android; see https://reactnative.dev/docs/platform#version. Empirically
28
- // (and this isn't in the doc yet), it's the SDK version, so for Android
29
- // 10 it won't be 10, it'll be 29.
30
- const androidSdkVersion = ( Platform . Version : number ) ;
31
- if ( androidSdkVersion > 28 ) {
21
+ if ( androidSdkVersion ( ) > 28 ) {
32
22
return ;
33
23
}
34
24
0 commit comments