我正在构建一个安卓库。我有一个界面:
public interface MyInterface {
public void onInitializationSuccess(MySession mySession, String name, String email);
public void onInitializationFailure();
}
我有一个保存MyInterface的程序规则:
-keep public class com.package.name.MyInterface { *; }
当我尝试在另一个项目中实现这个库并创建MyInterface时,这就是android studio创建它的方式:
new MyInterface() {
@Override
public void onInitializationSuccess(MySession mySession, String s, String s1) {
}
@Override
public void onInitializationFailure() {
}
}
我在猜测我的会话'保留名称是因为它是来自库的自定义类(保留它的程序规则)。我也希望保留其他两个参数名称,所以反而是' s'和' s1'开发人员会看到' name'和'电子邮件'。如何在不禁用整个项目的proguard混淆的情况下进行此操作?
我知道这个问题已被问过几次
此处:Proguard keep interface method variable names
此处:Proguard keep parameter names for interface and abstract class
在这里:Proguard keep interface method paramternames
但回复并不是真的有用。