21
21
import android .content .pm .PackageManager ;
22
22
import android .os .Build ;
23
23
import android .support .annotation .NonNull ;
24
+ import android .support .annotation .Size ;
24
25
import android .support .annotation .StringRes ;
25
26
import android .support .v4 .app .ActivityCompat ;
26
27
import android .support .v4 .app .Fragment ;
@@ -45,9 +46,9 @@ public class EasyPermissions {
45
46
*/
46
47
public interface PermissionCallbacks extends ActivityCompat .OnRequestPermissionsResultCallback {
47
48
48
- void onPermissionsGranted (int requestCode , List <String > perms );
49
+ void onPermissionsGranted (int requestCode , @ NonNull List <String > perms );
49
50
50
- void onPermissionsDenied (int requestCode , List <String > perms );
51
+ void onPermissionsDenied (int requestCode , @ NonNull List <String > perms );
51
52
52
53
}
53
54
@@ -62,7 +63,8 @@ public interface PermissionCallbacks extends ActivityCompat.OnRequestPermissions
62
63
* yet granted.
63
64
* @see Manifest.permission
64
65
*/
65
- public static boolean hasPermissions (Context context , @ NonNull String ... perms ) {
66
+ public static boolean hasPermissions (@ NonNull Context context ,
67
+ @ Size (min = 1 ) @ NonNull String ... perms ) {
66
68
// Always return true for SDK < M, let the system deal with the permissions
67
69
if (Build .VERSION .SDK_INT < Build .VERSION_CODES .M ) {
68
70
Log .w (TAG , "hasPermissions: API version < M, returning true by default" );
@@ -94,7 +96,7 @@ public static boolean hasPermissions(Context context, @NonNull String... perms)
94
96
*/
95
97
public static void requestPermissions (
96
98
@ NonNull Activity host , @ NonNull String rationale ,
97
- int requestCode , @ NonNull String ... perms ) {
99
+ int requestCode , @ Size ( min = 1 ) @ NonNull String ... perms ) {
98
100
requestPermissions (host , rationale , android .R .string .ok , android .R .string .cancel ,
99
101
requestCode , perms );
100
102
}
@@ -106,7 +108,7 @@ public static void requestPermissions(
106
108
*/
107
109
public static void requestPermissions (
108
110
@ NonNull Fragment host , @ NonNull String rationale ,
109
- int requestCode , @ NonNull String ... perms ) {
111
+ int requestCode , @ Size ( min = 1 ) @ NonNull String ... perms ) {
110
112
111
113
requestPermissions (host , rationale , android .R .string .ok , android .R .string .cancel ,
112
114
requestCode , perms );
@@ -119,7 +121,7 @@ public static void requestPermissions(
119
121
*/
120
122
public static void requestPermissions (
121
123
@ NonNull android .app .Fragment host , @ NonNull String rationale ,
122
- int requestCode , @ NonNull String ... perms ) {
124
+ int requestCode , @ Size ( min = 1 ) @ NonNull String ... perms ) {
123
125
124
126
requestPermissions (host , rationale , android .R .string .ok , android .R .string .cancel ,
125
127
requestCode , perms );
@@ -140,7 +142,7 @@ public static void requestPermissions(
140
142
public static void requestPermissions (
141
143
@ NonNull Activity host , @ NonNull String rationale ,
142
144
@ StringRes int positiveButton , @ StringRes int negativeButton ,
143
- int requestCode , @ NonNull String ... perms ) {
145
+ int requestCode , @ Size ( min = 1 ) @ NonNull String ... perms ) {
144
146
requestPermissions (PermissionHelper .newInstance (host ), rationale ,
145
147
positiveButton , negativeButton ,
146
148
requestCode , perms );
@@ -154,7 +156,7 @@ public static void requestPermissions(
154
156
public static void requestPermissions (
155
157
@ NonNull Fragment host , @ NonNull String rationale ,
156
158
@ StringRes int positiveButton , @ StringRes int negativeButton ,
157
- int requestCode , @ NonNull String ... perms ) {
159
+ int requestCode , @ Size ( min = 1 ) @ NonNull String ... perms ) {
158
160
requestPermissions (PermissionHelper .newInstance (host ), rationale ,
159
161
positiveButton , negativeButton ,
160
162
requestCode , perms );
@@ -166,7 +168,7 @@ public static void requestPermissions(
166
168
public static void requestPermissions (
167
169
@ NonNull android .app .Fragment host , @ NonNull String rationale ,
168
170
@ StringRes int positiveButton , @ StringRes int negativeButton ,
169
- int requestCode , @ NonNull String ... perms ) {
171
+ int requestCode , @ Size ( min = 1 ) @ NonNull String ... perms ) {
170
172
requestPermissions (PermissionHelper .newInstance (host ), rationale ,
171
173
positiveButton , negativeButton ,
172
174
requestCode , perms );
@@ -175,7 +177,7 @@ public static void requestPermissions(
175
177
private static void requestPermissions (
176
178
@ NonNull PermissionHelper helper , @ NonNull String rationale ,
177
179
@ StringRes int positiveButton , @ StringRes int negativeButton ,
178
- int requestCode , @ NonNull String ... perms ) {
180
+ int requestCode , @ Size ( min = 1 ) @ NonNull String ... perms ) {
179
181
180
182
// Check for permissions before dispatching the request
181
183
if (hasPermissions (helper .getContext (), perms )) {
0 commit comments