Skip to content

Commit 12b148f

Browse files
author
Shintaro Katafuchi
committed
Stop calling rationale methods in the OnRequestPermissionsResult.
1 parent f473b91 commit 12b148f

File tree

3 files changed

+3
-25
lines changed

3 files changed

+3
-25
lines changed

permissionsdispatcher-processor/src/main/java/permissions/dispatcher/processor/JavaFileBuilder.java

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
import static permissions.dispatcher.processor.ConstantsProvider.ACTIVITY_COMPAT;
1818
import static permissions.dispatcher.processor.ConstantsProvider.METHOD_SUFFIX;
1919
import static permissions.dispatcher.processor.ConstantsProvider.PERMISSION_UTIL;
20-
import static permissions.dispatcher.processor.Utils.findShowsRationaleFromValue;
2120
import static permissions.dispatcher.processor.Utils.getFieldName;
2221

2322
final class JavaFileBuilder {
@@ -65,7 +64,7 @@ ACTIVITY_COMPAT, activity, value, getFieldName(methodName))
6564
.build();
6665
}
6766

68-
private static MethodSpec createOnRequestPermissionsResult(ClassName target, List<ExecutableElement> methods, List<ExecutableElement> showsRationaleMethods) {
67+
private static MethodSpec createOnRequestPermissionsResult(ClassName target, List<ExecutableElement> methods) {
6968
MethodSpec.Builder methodBuilder = MethodSpec.methodBuilder("onRequestPermissionsResult")
7069
.addModifiers(Modifier.PUBLIC, Modifier.STATIC)
7170
.addParameter(target, "target")
@@ -77,18 +76,10 @@ private static MethodSpec createOnRequestPermissionsResult(ClassName target, Lis
7776

7877
for (ExecutableElement method : methods) {
7978
String methodName = method.getSimpleName().toString();
80-
String value = method.getAnnotation(NeedsPermission.class).value();
81-
ExecutableElement showsRationale = findShowsRationaleFromValue(value, showsRationaleMethods);
8279
methodBuilder
8380
.addCode("case $N:\n", getFieldName(methodName))
8481
.beginControlFlow("if ($T.verifyPermissions(grantResults))", PERMISSION_UTIL)
85-
.addStatement("target.$N()", methodName);
86-
if (showsRationale != null) {
87-
methodBuilder
88-
.nextControlFlow("else")
89-
.addStatement("target.$N()", showsRationale.getSimpleName());
90-
}
91-
methodBuilder
82+
.addStatement("target.$N()", methodName)
9283
.endControlFlow()
9384
.addStatement("break");
9485
}
@@ -117,13 +108,12 @@ private static FieldSpec createField(String name, int index) {
117108

118109
public static JavaFile createJavaFile(RuntimePermissionsAnnotatedElement element) {
119110
List<ExecutableElement> needsPermissionMethods = element.getNeedsPermissionMethods();
120-
List<ExecutableElement> showsRationaleMethods = element.getShowsRationaleMethods();
121111
TypeSpec clazz = TypeSpec.classBuilder(element.getDispatchClassName())
122112
.addModifiers(Modifier.PUBLIC, Modifier.FINAL)
123113
.addFields(createFields(needsPermissionMethods))
124114
.addMethod(createConstructor())
125115
.addMethods(createMethodsWithCheck(element))
126-
.addMethod(createOnRequestPermissionsResult(element.getClassName(), needsPermissionMethods, showsRationaleMethods))
116+
.addMethod(createOnRequestPermissionsResult(element.getClassName(), needsPermissionMethods))
127117
.build();
128118
String packageName = element.getPackageName();
129119
return JavaFile.builder(packageName, clazz).build();

permissionsdispatcher-processor/src/main/java/permissions/dispatcher/processor/RuntimePermissionsAnnotatedElement.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -66,10 +66,6 @@ public List<ExecutableElement> getNeedsPermissionMethods() {
6666
return needsPermissionMethods;
6767
}
6868

69-
public List<ExecutableElement> getShowsRationaleMethods() {
70-
return showsRationaleMethods;
71-
}
72-
7369
public ExecutableElement getShowsRationaleMethodFromValue(String value) {
7470
return findShowsRationaleFromValue(value, showsRationaleMethods);
7571
}

permissionsdispatcher-processor/src/test/java/permissions/dispatcher/processor/data/Source.java

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,6 @@ public static class OnePermissionActivity {
5656
" case REQUEST_SHOWCAMERA:",
5757
" if (PermissionUtils.verifyPermissions(grantResults)) {",
5858
" target.showCamera();",
59-
" } else {",
60-
" target.showRationaleForCamera();",
6159
" }",
6260
" break;",
6361
" default:",
@@ -120,8 +118,6 @@ public static class OnePermissionFragment {
120118
" case REQUEST_SHOWCAMERA:",
121119
" if (PermissionUtils.verifyPermissions(grantResults)) {",
122120
" target.showCamera();",
123-
" } else {",
124-
" target.showRationaleForCamera();",
125121
" }",
126122
" break;",
127123
" default:",
@@ -259,15 +255,11 @@ public static class TwoPermissions {
259255
" case REQUEST_SHOWCAMERA:",
260256
" if (PermissionUtils.verifyPermissions(grantResults)) {",
261257
" target.showCamera();",
262-
" } else {",
263-
" target.showRationaleForCamera();",
264258
" }",
265259
" break;",
266260
" case REQUEST_SHOWCONTACT:",
267261
" if (PermissionUtils.verifyPermissions(grantResults)) {",
268262
" target.showContact();",
269-
" } else {",
270-
" target.showRationaleForContact();",
271263
" }",
272264
" break;",
273265
" default:",

0 commit comments

Comments
 (0)