Skip to content
This repository was archived by the owner on Oct 3, 2024. It is now read-only.

Commit 70f7e11

Browse files
SUPERCILEXsamtstern
authored andcommitted
Improve Kotlin support (#178)
1 parent 146f1e9 commit 70f7e11

File tree

4 files changed

+31
-18
lines changed

4 files changed

+31
-18
lines changed

app/src/main/java/pub/devrel/easypermissions/sample/MainActivity.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -114,12 +114,12 @@ public void onRequestPermissionsResult(int requestCode,
114114
}
115115

116116
@Override
117-
public void onPermissionsGranted(int requestCode, List<String> perms) {
117+
public void onPermissionsGranted(int requestCode, @NonNull List<String> perms) {
118118
Log.d(TAG, "onPermissionsGranted:" + requestCode + ":" + perms.size());
119119
}
120120

121121
@Override
122-
public void onPermissionsDenied(int requestCode, List<String> perms) {
122+
public void onPermissionsDenied(int requestCode, @NonNull List<String> perms) {
123123
Log.d(TAG, "onPermissionsDenied:" + requestCode + ":" + perms.size());
124124

125125
// (Optional) Check whether the user denied any permissions and checked "NEVER ASK AGAIN."

app/src/main/java/pub/devrel/easypermissions/sample/MainFragment.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,12 +62,12 @@ private void smsTask() {
6262
}
6363

6464
@Override
65-
public void onPermissionsGranted(int requestCode, List<String> perms) {
65+
public void onPermissionsGranted(int requestCode, @NonNull List<String> perms) {
6666
Log.d(TAG, "onPermissionsGranted:" + requestCode + ":" + perms.size());
6767
}
6868

6969
@Override
70-
public void onPermissionsDenied(int requestCode, List<String> perms) {
70+
public void onPermissionsDenied(int requestCode, @NonNull List<String> perms) {
7171
Log.d(TAG, "onPermissionsDenied:" + requestCode + ":" + perms.size());
7272
}
7373
}

easypermissions/src/main/java/pub/devrel/easypermissions/AppSettingsDialog.java

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,7 @@ public Builder(@NonNull android.app.Fragment fragment) {
197197
/**
198198
* Set the dialog theme.
199199
*/
200+
@NonNull
200201
public Builder setThemeResId(@StyleRes int themeResId) {
201202
mThemeResId = themeResId;
202203
return this;
@@ -205,14 +206,16 @@ public Builder setThemeResId(@StyleRes int themeResId) {
205206
/**
206207
* Set the title dialog. Default is "Permissions Required".
207208
*/
208-
public Builder setTitle(String title) {
209+
@NonNull
210+
public Builder setTitle(@Nullable String title) {
209211
mTitle = title;
210212
return this;
211213
}
212214

213215
/**
214216
* Set the title dialog. Default is "Permissions Required".
215217
*/
218+
@NonNull
216219
public Builder setTitle(@StringRes int title) {
217220
mTitle = mContext.getString(title);
218221
return this;
@@ -223,7 +226,8 @@ public Builder setTitle(@StringRes int title) {
223226
* "This app may not work correctly without the requested permissions.
224227
* Open the app settings screen to modify app permissions."
225228
*/
226-
public Builder setRationale(String rationale) {
229+
@NonNull
230+
public Builder setRationale(@Nullable String rationale) {
227231
mRationale = rationale;
228232
return this;
229233
}
@@ -233,6 +237,7 @@ public Builder setRationale(String rationale) {
233237
* "This app may not work correctly without the requested permissions.
234238
* Open the app settings screen to modify app permissions."
235239
*/
240+
@NonNull
236241
public Builder setRationale(@StringRes int rationale) {
237242
mRationale = mContext.getString(rationale);
238243
return this;
@@ -241,14 +246,16 @@ public Builder setRationale(@StringRes int rationale) {
241246
/**
242247
* Set the positive button text, default is {@link android.R.string#ok}.
243248
*/
244-
public Builder setPositiveButton(String text) {
249+
@NonNull
250+
public Builder setPositiveButton(@Nullable String text) {
245251
mPositiveButtonText = text;
246252
return this;
247253
}
248254

249255
/**
250256
* Set the positive button text, default is {@link android.R.string#ok}.
251257
*/
258+
@NonNull
252259
public Builder setPositiveButton(@StringRes int textId) {
253260
mPositiveButtonText = mContext.getString(textId);
254261
return this;
@@ -262,14 +269,16 @@ public Builder setPositiveButton(@StringRes int textId) {
262269
* Activity#onActivityResult(int, int, Intent)}. If you still don't have the right
263270
* permissions, then the request was cancelled.
264271
*/
265-
public Builder setNegativeButton(String text) {
272+
@NonNull
273+
public Builder setNegativeButton(@Nullable String text) {
266274
mNegativeButtonText = text;
267275
return this;
268276
}
269277

270278
/**
271279
* Set the negative button text, default is {@link android.R.string#cancel}.
272280
*/
281+
@NonNull
273282
public Builder setNegativeButton(@StringRes int textId) {
274283
mNegativeButtonText = mContext.getString(textId);
275284
return this;
@@ -280,6 +289,7 @@ public Builder setNegativeButton(@StringRes int textId) {
280289
* in the calling Activity's {@link Activity#onActivityResult(int, int, Intent)} method.
281290
* Default is {@link #DEFAULT_SETTINGS_REQ_CODE}.
282291
*/
292+
@NonNull
283293
public Builder setRequestCode(int requestCode) {
284294
mRequestCode = requestCode;
285295
return this;
@@ -289,6 +299,7 @@ public Builder setRequestCode(int requestCode) {
289299
* Build the {@link AppSettingsDialog} from the specified options. Generally followed by a
290300
* call to {@link AppSettingsDialog#show()}.
291301
*/
302+
@NonNull
292303
public AppSettingsDialog build() {
293304
mRationale = TextUtils.isEmpty(mRationale) ?
294305
mContext.getString(R.string.rationale_ask_again) : mRationale;

easypermissions/src/main/java/pub/devrel/easypermissions/EasyPermissions.java

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import android.content.pm.PackageManager;
2222
import android.os.Build;
2323
import android.support.annotation.NonNull;
24+
import android.support.annotation.Size;
2425
import android.support.annotation.StringRes;
2526
import android.support.v4.app.ActivityCompat;
2627
import 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

Comments
 (0)