2121import android .content .pm .PackageManager ;
2222import android .os .Build ;
2323import android .support .annotation .NonNull ;
24+ import android .support .annotation .Size ;
2425import android .support .annotation .StringRes ;
2526import android .support .v4 .app .ActivityCompat ;
2627import android .support .v4 .app .Fragment ;
@@ -45,9 +46,9 @@ public class EasyPermissions {
4546 */
4647 public interface PermissionCallbacks extends ActivityCompat .OnRequestPermissionsResultCallback {
4748
48- void onPermissionsGranted (int requestCode , List <String > perms );
49+ void onPermissionsGranted (int requestCode , @ NonNull List <String > perms );
4950
50- void onPermissionsDenied (int requestCode , List <String > perms );
51+ void onPermissionsDenied (int requestCode , @ NonNull List <String > perms );
5152
5253 }
5354
@@ -62,7 +63,8 @@ public interface PermissionCallbacks extends ActivityCompat.OnRequestPermissions
6263 * yet granted.
6364 * @see Manifest.permission
6465 */
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 ) {
6668 // Always return true for SDK < M, let the system deal with the permissions
6769 if (Build .VERSION .SDK_INT < Build .VERSION_CODES .M ) {
6870 Log .w (TAG , "hasPermissions: API version < M, returning true by default" );
@@ -94,7 +96,7 @@ public static boolean hasPermissions(Context context, @NonNull String... perms)
9496 */
9597 public static void requestPermissions (
9698 @ NonNull Activity host , @ NonNull String rationale ,
97- int requestCode , @ NonNull String ... perms ) {
99+ int requestCode , @ Size ( min = 1 ) @ NonNull String ... perms ) {
98100 requestPermissions (host , rationale , android .R .string .ok , android .R .string .cancel ,
99101 requestCode , perms );
100102 }
@@ -106,7 +108,7 @@ public static void requestPermissions(
106108 */
107109 public static void requestPermissions (
108110 @ NonNull Fragment host , @ NonNull String rationale ,
109- int requestCode , @ NonNull String ... perms ) {
111+ int requestCode , @ Size ( min = 1 ) @ NonNull String ... perms ) {
110112
111113 requestPermissions (host , rationale , android .R .string .ok , android .R .string .cancel ,
112114 requestCode , perms );
@@ -119,7 +121,7 @@ public static void requestPermissions(
119121 */
120122 public static void requestPermissions (
121123 @ NonNull android .app .Fragment host , @ NonNull String rationale ,
122- int requestCode , @ NonNull String ... perms ) {
124+ int requestCode , @ Size ( min = 1 ) @ NonNull String ... perms ) {
123125
124126 requestPermissions (host , rationale , android .R .string .ok , android .R .string .cancel ,
125127 requestCode , perms );
@@ -140,7 +142,7 @@ public static void requestPermissions(
140142 public static void requestPermissions (
141143 @ NonNull Activity host , @ NonNull String rationale ,
142144 @ StringRes int positiveButton , @ StringRes int negativeButton ,
143- int requestCode , @ NonNull String ... perms ) {
145+ int requestCode , @ Size ( min = 1 ) @ NonNull String ... perms ) {
144146 requestPermissions (PermissionHelper .newInstance (host ), rationale ,
145147 positiveButton , negativeButton ,
146148 requestCode , perms );
@@ -154,7 +156,7 @@ public static void requestPermissions(
154156 public static void requestPermissions (
155157 @ NonNull Fragment host , @ NonNull String rationale ,
156158 @ StringRes int positiveButton , @ StringRes int negativeButton ,
157- int requestCode , @ NonNull String ... perms ) {
159+ int requestCode , @ Size ( min = 1 ) @ NonNull String ... perms ) {
158160 requestPermissions (PermissionHelper .newInstance (host ), rationale ,
159161 positiveButton , negativeButton ,
160162 requestCode , perms );
@@ -166,7 +168,7 @@ public static void requestPermissions(
166168 public static void requestPermissions (
167169 @ NonNull android .app .Fragment host , @ NonNull String rationale ,
168170 @ StringRes int positiveButton , @ StringRes int negativeButton ,
169- int requestCode , @ NonNull String ... perms ) {
171+ int requestCode , @ Size ( min = 1 ) @ NonNull String ... perms ) {
170172 requestPermissions (PermissionHelper .newInstance (host ), rationale ,
171173 positiveButton , negativeButton ,
172174 requestCode , perms );
@@ -175,7 +177,7 @@ public static void requestPermissions(
175177 private static void requestPermissions (
176178 @ NonNull PermissionHelper helper , @ NonNull String rationale ,
177179 @ StringRes int positiveButton , @ StringRes int negativeButton ,
178- int requestCode , @ NonNull String ... perms ) {
180+ int requestCode , @ Size ( min = 1 ) @ NonNull String ... perms ) {
179181
180182 // Check for permissions before dispatching the request
181183 if (hasPermissions (helper .getContext (), perms )) {
0 commit comments