是的,只能处理非public的变量和方法。比如private or package的方法变量都可以混淆。所以我的方法是分割业务,做一个public的类,调用同一个包里的多个package范围的类。这些类只能为包里的类访问,只被定义的public的那个类来访问,所以公开一个类而隐藏真正实现功能的多个类。
to ender(ender) :UNICODE是可以用native2assic来转化的还是每用的 ======================================== 有时会有些CLASS无法反编译,我也不知道为什么,还没时间研究……有个方法可以不用混淆器——大量使用中文来命名,这样反编译出来是一堆UNICODE,谁都看不懂,哈哈
敢问各位,是否同意我的分析?
是的,只能处理非public的变量和方法。比如private or package的方法变量都可以混淆。所以我的方法是分割业务,做一个public的类,调用同一个包里的多个package范围的类。这些类只能为包里的类访问,只被定义的public的那个类来访问,所以公开一个类而隐藏真正实现功能的多个类。
可以当试用版
"运用加密技术保护Java源代码"
http://www-900.ibm.com/developerWorks/java/l-secureclass/index.shtml
另:这个问题并不是我们在做项目的时候碰到的问题,只是在闲聊时提出的问题,也许也值得大家的关注吧.
========================================
有时会有些CLASS无法反编译,我也不知道为什么,还没时间研究……有个方法可以不用混淆器——大量使用中文来命名,这样反编译出来是一堆UNICODE,谁都看不懂,哈哈