dhroid ioc模块对 加密混淆问题

大家应该已经看过ioc的知识

在ioc基础中中

视图事件都是通过注解实现的

 

 

问题1
如果有某个属性只声明了一下,其他代码没有引用由于混淆时会进行属性优化,将没用的属性去掉,这时需要处理

处理方法:在混淆配置文件中保留属性

 

 

 

 

问题2
混合代码时方法名都会变成a,b,c等,这样ioc事件可能就找不到方法
如下面的注解
InjectView(id=R.id.listView,itemClick="toEditStudent",itemLongClick="toDeleteStudent")  

处理方法
在写代码时要有规范所有方法  所有事件方法都是以  on或to开头
在配置 混淆配置文件 对以on 和to的方法名保留
事件

   事件总线OnEvent 注解的方法也需要这样处理 ,不然方法可能被注释掉

     附件中有我的混淆配置文件

   

     当然现在还有更好的选择  使用第三方工具进行加密

     爱加密的加密功能还是很牛的

     http://www.ijiami.cn/treg?regCode=1003705

     爱加密最后生成的classe.dex只有2k

     我和他们客服聊了下

     他说   

原本的DEX文件被隐藏了的
现在这里的只是它们做的一个壳
这个基础版做了两部分处理,一是对apk内部每一个文件进行唯一值验证,只要apk内部的任何一个文件被修改 此文件的唯一值必定变化。运行时检测到变化程序将卡死。另一个就是DEX加壳隐藏

    有点像帮他们做广告的嫌疑啊

 

    当然你也可以先混淆后在让爱加密的加密  

 

   

    

 

 

 

 

 

你可能感兴趣的:(IOC)