我反编译了一个Android APK(科特林代码),试图理解代码并遇到了这个问题:
public final class RetrofitJSONArrayConverter extends Factory {
public static final Companion Companion = new Companion();
private static final MediaType MEDIA_TYPE = MediaType.parse("application/json; charset=UTF-8");
@Metadata(bv = {1, 0, 3}, d1 = {"\u0000\u0012\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000\b\u0003\u0018\u00002\u00020\u0001B\u0007\b\u0002¢\u0006\u0002\u0010\u0002R\u0010\u0010\u0003\u001a\u0004\u0018\u00010\u0004X\u0004¢\u0006\u0002\n\u0000¨\u0006\u0005"}, d2 = {"Lio/voiapp/voi/util/RetrofitJSONArrayConverter$Companion;", "", "()V", "MEDIA_TYPE", "Lokhttp3/MediaType;", "app_release"}, k = 1, mv = {1, 1, 13})
/* compiled from: RetrofitJSONArrayConverter.kt */
public static final class Companion {
private Companion() {
}
}
@Nullable
public Converter<ResponseBody, ?> responseBodyConverter(@NotNull Type type, @NotNull Annotation[] annotationArr, @NotNull Retrofit retrofit) {
Intrinsics.checkParameterIsNotNull(type, "type");
Intrinsics.checkParameterIsNotNull(annotationArr, "annotations");
Intrinsics.checkParameterIsNotNull(retrofit, "retrofit");
return Intrinsics.areEqual((Object) JSONArray.class, (Object) type) != null ? (Converter) RetrofitJSONArrayConverter$responseBodyConverter$1.INSTANCE : null;
}
@Nullable
public Converter<?, RequestBody> requestBodyConverter(@NotNull Type type, @NotNull Annotation[] annotationArr, @NotNull Annotation[] annotationArr2, @NotNull Retrofit retrofit) {
Intrinsics.checkParameterIsNotNull(type, "type");
Intrinsics.checkParameterIsNotNull(annotationArr, "parameterAnnotations");
Intrinsics.checkParameterIsNotNull(annotationArr2, "methodAnnotations");
Intrinsics.checkParameterIsNotNull(retrofit, "retrofit");
return Intrinsics.areEqual((Object) JSONArray.class, (Object) type) != null ? (Converter) RetrofitJSONArrayConverter$requestBodyConverter$1.INSTANCE : null;
}
}
我知道Kotlin代码可能会被Java反编译器严重误解 但是反编译器怎么会错过所有这些方法参数
对此有何想法?