gpt4 book ai didi

Android,共享库依赖

转载 作者:行者123 更新时间:2023-12-04 23:31:05 25 4
gpt4 key购买 nike

  • 我正在实现一个在 Android 上使用 LibAv/ffmpeg 的应用程序
  • 我正在使用 JNI 与 Native 代码交互
  • 我的“共享库”正在使用 libswscale.so、libavutil.so、libavformat.so、libavdevice.so、libavcore.so 和 libavcodec.so。
  • 所有的“共享库”都经过验证打包到 APK 文件
  • 上的同一目录中
  • 我正在设备上调试(没有模拟器)
  • Runtime.loadLibrary($MY_LIB_NAME) 触发 UnsatisfiedLinkError 异常
  • 直接运行 'System.loadLibrary("swscale")' 也会导致 UnsatisfiedLinkError 异常

  • 我的猜测是 libav*.so 依赖于应该添加到 APK 的其他库,但是,我不确定如何检测这些。
    有什么工具可以检测依赖的共享库吗? (窗口 ddepends 等效)?

    任何帮助将不胜感激。

    ~纳达夫

    最佳答案

    您可以使用 objdump 工具列出所需的共享库:

    <ANDROID_NDK_ROOT>\toolchains\arm-linux-androideabi-4.4.3\prebuilt\windows\bin\arm-linux-androideabi-objdump -p libNAME.so | grep NEEDED

    那是给 window 的。为您的操作系统更改 objdump 工具的路径。

    关于Android,共享库依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9110104/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com