天天看点

Android APK混淆方案——对dex文件直接混淆

使用工具:NP管理器--v2.5.1

NP管理器-2.5.1.apk 下载地址

第一步:点击要混淆的apk,选择超级混淆3.0

Android APK混淆方案——对dex文件直接混淆

第二步:设置字典和混淆配置

Android APK混淆方案——对dex文件直接混淆

备注:混淆配置说明

# 《NP管理器-超级混淆 1.0-配置说明》
# by MT_吹牛儿 on 2019/12/03
# 功能:1:直接混淆APK中的DEX,大幅度提高效率;2:支持多dex。

#保留源文件名称 source
-keepsourcefile

#=======================================总的keep===================================================

# 保护某个包名下所有的类以及类的成员和方法
-keep class org.xmlpull.v1.** *

# 保护某个包名下所有的类名,不包括成员和方法
-keep class org.xmlpull.v1.**

# 只保护指定包名下所有的类以及类的成员和方法
-keep class org.xmlpull.v1.* *

# 只保护指定包名下所有的类名,不包括类的成员和方法
-keep class org.xmlpull.v1.*

# 保护某个类的名字,以及他的成员和方法
-keep class nplus.np.NPStringFogPlus *

# 保护某个类的名字,不保护成员和方法 -keep class xx.xx.XX
-keep class nplus.np.NPStringFogPlus

#=======================================类的方法keep===================================================
# 保护所有类下指定的方法,不保护类名 -keepclassmembers class [类名] [方法名,方法名2,方法名3...]
-keepclassmethods class ** *On*Event,*Changed

# 保护指定包名下类指定的方法,不保护类名 -keepclassmembers class [类名] [方法名,方法名2..]
-keepclassmethods class org.xmlpull.v1.* *On*Event,*Changed

# 保护某个包名下所有的指定的方法,不保护类名 -keepclassmembers class [类名] [方法名,方法名2..]
-keepclassmethods class org.xmlpull.v1.** *On*Event,*Changed

# 保护制定类所有的指定的方法,不保护类名 -keepclassmembers class [类名] [方法名,方法名2..]
-keepclassmethods class org.xmlpull.v1.Abc *On*Event,*Changed

#=======================================类的成员字段keep===================================================
# 保护所有类下指定的方法,不保护类名 -keepclassmembers class [类名] [字段名,字段名2..]
-keepclassfields class ** *mField1,*mField12

# 保护指定包名下类指定的方法,不保护类名 -keepclassmembers class [类名] [字段名,字段名2..]
-keepclassfields class org.xmlpull.v1.* *mField1,*mField12

# 保护某个包名下所有的指定的方法,不保护类名 -keepclassmembers class [类名] [字段名,字段名2..]
-keepclassfields class org.xmlpull.v1.** *mField1,*mField12

# 保护制定类所有的指定的方法,不保护类名 -keepclassmembers class [类名] [字段名,字段名2..]
-keepclassfields class org.xmlpull.v1.Abc *mField1,*mField12
           

混淆效果:

Android APK混淆方案——对dex文件直接混淆