【问题标题】:How to load native library to android library project如何将本机库加载到 android 库项目
【发布时间】:2012-12-27 12:10:55
【问题描述】:

首先,我的项目结构是这样的:

Android项目A --> Android库项目B(包含一些原生so库) --> Java库C.

  1. 项目A如何引用android库项目B:

  2. android库项目B中的原生库。

  1. Android库项目B是如何库的:

  2. 加载库代码(在android库项目B中):

    System.loadLibrary("G72x");

    System.loadLibrary("H264Android");

  3. 崩溃日志:

    12-27 20:32:51.698: E/AndroidRuntime(11589): FATAL EXCEPTION: Thread-1694
    12-27 20:32:51.698: E/AndroidRuntime(11589): java.lang.UnsatisfiedLinkError:    InitDecoder
    12-27 20:32:51.698: E/AndroidRuntime(11589):    at com.xx.xxx.media.H264Decoder.InitDecoder(Native Method)
    12-27 20:32:51.698: E/AndroidRuntime(11589):    at com.xx.xxx.media.VideoParseThread.getH264(VideoParseThread.java:131)
    12-27 20:32:51.698: E/AndroidRuntime(11589):    at com.xxx.xxx.media.VideoParseThread.run(VideoParseThread.java:46)
    

现在,当应用程序运行需要 so 库的代码时,它崩溃了。我已经阅读了一些答案,但仍然没有解决。

如果所有的库b项目都在项目A中,那就很好了。

任何帮助将不胜感激,这个问题让我发疯,我知道它应该有一个解决方案,但我不知道如何。

【问题讨论】:

    标签: android native loadlibrary


    【解决方案1】:

    第一:
    对项目的可怕解释和对项目结构的描述。
    第二:
    确保它已在您的构建设置中导出。
    如果你解释得更准确,你的结构是怎样的,也许用截图,那么我可以缩小我对你错误的解释

    编辑:

    在您的“项目属性”下进入“java 构建路径”,然后进入“订购和导出”。
    在这里,您的项目需要存在并标记。

    【讨论】:

    • 好的好多了。您在项目 A 中对项目 B 的引用是不够的。编辑了答案
    猜你喜欢
    • 1970-01-01
    • 2012-01-05
    • 2013-12-06
    • 2011-08-08
    • 2016-03-19
    • 1970-01-01
    • 1970-01-01
    • 2018-09-17
    • 2013-05-11
    相关资源
    最近更新 更多