1. 说明
- 对 cpp 文件内的字符串进行过滤
- 对字符串进行 MD5 处理,然后做为字符串类索引的类名、方法名
- 提取字符串并加密,生成十六进制的类文件
- 替换 cpp 文件内对应的字符串为这个对应的函数引用
2. 简单示例
使用 python 脚本去处理字符串。处理后的字符串类文件示例:
__attribute__ ((naked)) void D_2efd29f57c0696762f02ee3d630bdc27() {
asm(".long 0x76007500");
asm(".long 0x78007700");
asm(".long 0x65006600");
asm(".long 0x67006800");
asm(".long 0x00006a00");
asm(".long 0x00000000");
}
宝贵文件,不公开
3. Android.mk 编写
隐藏符号表
LOCAL_CFLAGS += -fvisibility=hidden