ApkTool对apk进行解包,在解包后的lib目录中找到so文件
so文件大概有以下几种
- armeabi: 第5代、第6代的ARM处理器,早期的手机用的比较多。
- armeabiv-v7a:第7代及以上的 ARM 处理器,2011年15月以后的生产的大部分Android设备都使用它
- arm64-v8a:第8代、64位ARM处理器,很少设备,三星 Galaxy S6是其中之一
- x86:平板、模拟器用得比较多
- x86_64:64位的平板
使用IDA打开so的时候一般是没必要更改处理器类型的
so中的函数名一般是java_${packageName}_${methodName}
使用IDA进行修改后(或者使用其他16进制编辑器进行修改)Edit -> Patch Program -> Apply patchs to input file进行保存
之后进行替换原so文件并使用apktool进行重新打包与签名