代码混淆

2018-07-27  本文已影响0人  三炮大圣

混淆就是在你不想开源代码的时候对代码进行混淆处理,让代码即使被反编译也难以阅读,而且还可以精简编译后程序的大小


一般以下情况都会不混淆:

1.使用了自定义控件那么要保证它们不参与混淆

2.使用了枚举要保证枚举不被混淆

3.对第三方库中的类不进行混淆

4.运用了反射的类也不进行混淆

5.使用了 Gson 之类的工具要使 JavaBean 类即实体类不被混淆

6.在引用第三方库的时候,一般会标明库的混淆规则的,建议在使用的时候就把混淆规则添加上去,免得到最后才去找

7.有用到 WebView 的 JS 调用也需要保证写的接口方法不混淆

PS:保留我们使用的四大组件,自定义的Application等等这些类不被混淆,因为这些子类都有可能被外部调用。


代码混淆的缺点

由于被混淆的代码难于理解,所以使调错变得困难,开发人员通常需要保留原始的未混淆的代码用于调试。对于支持反射的语言,代码混淆有可能与反射发生冲突。

注:代码混淆并不能真正阻止反向工程,只能增大其难度。因此,对于对安全性要求很高的场合,仅仅使用代码混淆并不能保证源代码的安全

上一篇 下一篇

猜你喜欢

热点阅读