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進行重新打包與簽名