Proguard 不混淆内部接口

a522922030 2013-08-01 03:19:20
RT

private static void setImageView(String par,ImageCallback i)
{
i.imageLoaded("1","2");

}

/**回调接口*/
public interface ImageCallback
{
public void imageLoaded(String imageDrawable, String imageUrl);

public String getMy(String a);
}


比如这样的一段代码,使用Proguard 混淆后,接口变成如下(参数都没了)


不想混淆回调接口该怎么办?我使用的是Proguard GUI

...全文
1406 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
至诚学员 2016-03-21
  • 打赏
  • 举报
回复
#3 的混淆配置 rule 可行 其实 我遇到的问题 是 混淆完 ,在eclipse中 可以 提示的出来,但是回车 ,不会出现补充的代码片段 。原来 是 impor 的方式 不对造成了。多谢 能够补充说明这一点
hugbio 2015-02-06
  • 打赏
  • 举报
回复
引用 2 楼 shijiejiewu 的回复:
这个问题解决了吗? 求指导
不混淆内部接口的方法是: -keep interface com.test.TestSdk$Callback { public <methods>; } 这样以后,外部调用必须是这样才行: 首先导入jar包 import com.test.TestSdk$Callback;(不能用import com.test.TestSdk.Callback;) 实现接口的时候这样 。。。。。 implements TestSdk$Callback { } 还是不建议用内部接口。直接用外部接口。那不混淆接口跟不混淆类就一样的做法的。比如: -keep interface com.test.Callback 外部调用跟平时一样!
shijiejiewu 2015-01-28
  • 打赏
  • 举报
回复
这个问题解决了吗? 求指导
a522922030 2013-08-01
  • 打赏
  • 举报
回复
自己先顶~! 网上的方法我试了很多都没效果 不知道是在GUI里哪里填写还是其它问题。 -keep public interface com.xx.TestDemo1.ImageCallBack{ public void imageLoaded(java.long.String,java.long.String);} 没效果

50,523

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧