-
Notifications
You must be signed in to change notification settings - Fork 62
/
Utils.java
44 lines (36 loc) · 1.86 KB
/
Utils.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
package com.asksira.bsimagepicker;
import android.Manifest;
import android.content.Context;
import android.content.pm.PackageManager;
import android.content.res.Resources;
import android.os.Build;
import android.support.v4.app.Fragment;
import android.support.v4.content.ContextCompat;
import android.util.TypedValue;
public class Utils {
public static int dp2px (int dp) {
return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, dp, Resources.getSystem().getDisplayMetrics());
}
public static void checkPermission (Fragment fragment, String permissionString, int permissionCode) {
if ((android.os.Build.VERSION.SDK_INT < Build.VERSION_CODES.M) || fragment.getContext() == null) return;
int existingPermissionStatus = ContextCompat.checkSelfPermission(fragment.getContext(),
permissionString);
if (existingPermissionStatus == PackageManager.PERMISSION_GRANTED) return;
fragment.requestPermissions(new String[]{permissionString}, permissionCode);
}
public static boolean isReadStorageGranted (Context context) {
int storagePermissionGranted = ContextCompat.checkSelfPermission(context,
Manifest.permission.READ_EXTERNAL_STORAGE);
return storagePermissionGranted == PackageManager.PERMISSION_GRANTED;
}
public static boolean isWriteStorageGranted (Context context) {
int storagePermissionGranted = ContextCompat.checkSelfPermission(context,
Manifest.permission.WRITE_EXTERNAL_STORAGE);
return storagePermissionGranted == PackageManager.PERMISSION_GRANTED;
}
public static boolean isCameraGranted (Context context) {
int cameraPermissionGranted = ContextCompat.checkSelfPermission(context,
Manifest.permission.CAMERA);
return cameraPermissionGranted == PackageManager.PERMISSION_GRANTED;
}
}