Android 动态调试so文件

一、准备工作

  • 首先使用工具获取到正确的动态链接库文件,一般来说有四种类型:
    • arm64-v8a:ARMv8,64位
    • armeabi-v7a:ARMv7,32位
    • x86:x86,32位
    • x86_64:x86_64,64位
  • 大部分情况下,在真机上调试都使用ARM架构的so文件,可以根据设备是32位还是64位,选择对应的so文件进行调试。
  • 其次我们要查看我们Android的编译类型,可以查看ro.debuggable的值:
getprop ro.debuggable
1
  • 如果该值为1,则证明这个ROM本身是可调试的,同时我们也可以调试手机上任意的应用,一般来说很多基于AOSP编译的ROM都是这样,这样就可以直接进行调试。
  • 如果是0,则必须APK本身是可调试的才行,也就是要检查AndroidManifest.xmlandroid:debuggable的值,这个值对于debug版本的APK默认值是true,对release版本的APK默认值是false。如果是false的话,那么想调试这个应用就只能重新编译它,或者找一台ROM可调试的手机来了。
  • 同时你还需要有adb上的root权限,这样才可以进行调试。
继续阅读“Android 动态调试so文件”