Backport not fixing “Predicate” in method call parameter
Java class file shrinker, optimizer, obfuscator, and preverifier
Brought to you by:
guardsquare
I'm using proguard to backport java8 api. And backport not fixing “Predicate” in method call parameter.
Backport successfully changed most "java.util.function.Predicate" to "java8.util.function.Predicate", but forget to change method call parameter type.
invoke-direct {p0, v0}, Lcom/alibaba/tardis/lab/libwithoutbackport/LibWithoutBackport;->testPredicate(Ljava/util/function/Predicate;)Ljava/util/function/Predicate;
Full smali file is attached.
It only occurs when the called method is private. If it is public then all right.
I fixed this. This is a bug in AbstractAPIConverter.java. Here is the patch.
Last edit: Zhou Jian 2019-07-29
Thanks for the report and patch, it is fixed in source and will be included in the upcoming 6.2.0 release. In the future, please report bugs on the github page: https://github.com/Guardsquare/proguard