libart.so位置是在 /system/lib/libart.so
adb pull /system/lib/libart.so .
Exports里面搜索:LoadNativeLibrary
獲取地址: 0x002516F0
libart%20so%20JNI_ONLOAD%20fa13f73d7cdb466ea14d57913dd104a0/Untitled.png
然后在strings窗口里搜索 Calling JNI_OnLoad
點(diǎn)進(jìn)去右擊查看交叉引用,點(diǎn)第一個(gè)進(jìn)去
libart%20so%20JNI_ONLOAD%20fa13f73d7cdb466ea14d57913dd104a0/Untitled%201.png
libart%20so%20JNI_ONLOAD%20fa13f73d7cdb466ea14d57913dd104a0/Untitled%202.png
進(jìn)去后點(diǎn)最下面的B
libart%20so%20JNI_ONLOAD%20fa13f73d7cdb466ea14d57913dd104a0/Untitled%203.png
進(jìn)來(lái)之后是R6位置,下面的 BLX R5
記住這里的地址 0x00251E66
libart%20so%20JNI_ONLOAD%20fa13f73d7cdb466ea14d57913dd104a0/Untitled%204.png
用這里的地址減去前面搜索 LoadNativeLibrary
拿到的地址
0x00251E66 - 0x002516F0
得到偏移 0x776
然后以后動(dòng)態(tài)調(diào)試的時(shí)候,先確認(rèn)你需要的so加載進(jìn)來(lái)了,然后在libart.so中的模塊窗口直接搜索 LoadNativeLibrary
用這個(gè)位置加上上面的 0x776
這里斷下來(lái),然后F7進(jìn)入的時(shí)候就是當(dāng)前so的JNI_ONLOAD