【问题标题】:how to include .so file in Android如何在 Android 中包含 .so 文件
【发布时间】:2012-03-13 08:47:06
【问题描述】:

我正在自定义 Gingerbread 源代码。 我的一个应用程序需要 .so 文件才能包含在其中。但我没有在这方面取得成功。 请帮我。 我已经在这里找到了一些答案,但它对我不起作用。

【问题讨论】:

    标签: android


    【解决方案1】:

    使目录结构像这样。

    将目录名称设为 "libs" 。

    现在将子目录命名为“armeabi”

    然后将您的 .so 文件复制到“armeabi”文件夹中。

    喜欢。库/armeabi/YOUR_SO_FILE 。

    然后在你的程序中编写代码。

     System.loadLibrary("NAME_OF_YOUR_FILE");
    

    【讨论】:

    • 你需要在任何地方添加它的路径吗?我只是按照你说的做了,但没有成功!
    • 可能有this问题。
    【解决方案2】:

    您必须将.so 文件放在项目的libs/armeabi 文件夹中。如果此文件夹不存在,您将需要创建它们。如果您的.so 文件未创建,而您想要创建它并了解更多信息,您可以查看What is the NDK?。

    如果您想在自定义源代码中包含.so 文件(我不建议这样做,因为这意味着您的应用程序将只能在该自定义操作系统上运行/可以使用共享库)我认为您需要将.so 文件放在lib/ 文件夹中。

    【讨论】:

    • 您好,我试过这个,但是编译时找不到.so文件。 .mk 文件可能会有一些变化!
    【解决方案3】:

    要将 .so 文件包含为库,请按照以下步骤操作。

    1. 在 .让我们称之为库。将.so放在这个文件夹中

    2. 右键单击项目 -> 单击 Java 构建路径 -> 单击源选项卡 -> 单击添加。现在指向此库或包含任何存储 .so 文件的目录。
      单击同一窗口上的订购和导出选项卡,并确保它已被选中。

    现在您可以使用带有 system.load() 调用的 JNI 接口作为 java 文件访问此 .so。为了更好的交互,请始终在 Java 类中声明所有 JNI 接口并将其包含在当前项目中

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-19
      • 2012-05-28
      • 2016-02-10
      • 2023-03-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多