编译命令:
ndk-build APP_ABI="armeabi"
ndk-build APP_ABI=“x86”
在使用Cydia Hook时需要知道so中不同平台中对应的函数名称,可以通过如下nm
命令获取:
nm
命令位置:/usr/local/Cellar/android-ndk/android-ndk-r10e/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/arm-linux-androideabi/bin
nm
命令使用:
NetEasedeiMac-9:bin netease$ ./nm -a ~/Desktop/libdvm.so | grep dvmUseJNIBridge
0005bd30 T _Z15dvmUseJNIBridgeP6MethodPv
可以使用objdump
查找so中方法:
NetEasedeiMac-9:bin netease$ ./objdump -TC ~/Desktop/libdvm.so |grep dvmUseJNIBridge
0005bd30 g DF .text 000000d7 dvmUseJNIBridge(Method*, void*)
对应的nm
方法:
NetEasedeiMac-9:bin netease$ ./nm -gC ~/Desktop/libdvm.so | grep dvmUseJNIBridge
0005bd30 T dvmUseJNIBridge(Method*, void*)