首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android库: findLibrary返回null

Android库: findLibrary返回null
EN

Stack Overflow用户
提问于 2012-01-11 15:30:59
回答 1查看 10.4K关注 0票数 5

我正在Eclipse中构建一个中等规模的项目。它由主应用程序项目和两个Android库组成。一切都很好,直到我向主项目添加了一个非常简单的JNI库。

当我在设备上运行应用程序时,我在LogCat中看到了这个异常:

java.lang.Runtime.loadLibrary(Runtime.java:429):

01-11 17:19:01.421: e/AndroidRuntime(26569):无法加载xxx: findLibrary返回null

我搜索了一下类似的问题,我相信我做的每件事都是正确的:

  1. (唯一的.c文件和Android.mk文件)被放置在'jni‘文件夹
  2. i,使用ndk构建工具
  3. 构建库。.so库正确地放置在'libs\armeabi’文件夹
  4. 中,我看到最终的apk文件确实包含了我的本机库

G 211

当我创建一个测试项目并链接到相同的本机代码时,它工作得很好。这个问题在主要项目中仍然存在。我已经试着从头开始创建Eclipse项目,但是没有帮助

我使用Android工具v.16

有人能帮我提个建议吗?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-11 17:10:20

好的,在与Android斗争了两天之后,我设法解决了我的问题。这里有一些解释,以防万一会对其他人有所帮助。

我以前的项目结构:

  1. Android Lib1项目(有其自己的jni代码)
  2. Android Lib2项目(依赖Lib1)
  3. App1项目(依赖Lib2)
  4. App2项目(与其自己的jni代码;依赖Lib2)

当我试图在App2中加载jni库时,已经看到了最初的问题。我仍然不明白是什么阻止运行时在App2中找到jni。

但是,解决方案是从工作区中删除Lib1项目,并将其作为JAR文件添加到Lib2和两个应用程序中。现在,我终于能够在App2中使用加载jni库。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8821926

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档