2023年6月12日 星期一

Android中類似Linux下ldd分析可執行文件和動態庫對庫的依賴

指令

/your_path/Android/Sdk/ndk/21.4.7075529/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android-readelf -a /your_lib_path/your_lib.so | grep NEED


lib tool

readelf也可以換成ld等lib tool


依據架構分別使用不同的執行檔

  • arm64: aarch64-linux-android-readelf
  • arm: arm-linux-androideabi-readelf
  • x86_64: x86_64-linux-android-readelf
  • X86: i686-linux-android-readelf

your_lib_path

通常會在這:
your_project_path/app/build/intermediates/stripped_native_libs/debug/out/lib/arm64-v8a
這裡是瘦身後的lib位置,就是把debug message拿掉的,沒拿掉的在另一個目錄下。


grep

印出來的資訊太多了,用grep過濾你想要的資訊。

沒有留言:

張貼留言