gpt4 book ai didi

android - 如何为android制作一个包含 native 代码和纯java的库

转载 作者:搜寻专家 更新时间:2023-11-01 09:45:55 28 4
gpt4 key购买 nike

我已经为 android 的不同体系结构交叉编译了 native 代码,并使其相应的 jni 包装器类在 android studio 中工作。现在我想把它作为一个图书馆提供。我有两个问题:

1)我可以只将 .so 文件和 jni 文件打包成库吗?(不是 .aar,因为我的库只包含纯 java 和 native 代码,没有 android 相关的东西,如 .xml、res 等)如果是这样,它的结构应该是什么?

2) 如果我无法创建 .jar 文件,那么剩下的就是创建 .aar 文件。这将包括使用 android studio。我可以不用 android studio 做吗?

编辑 1: 如果我 jar 文件,那么我不想提取 .so 然后使用它。如果我 jar 文件,然后将它(.jar)作为依赖项添加到我的项目中,那么它应该自动将 .so 放入我的 apk 中的 libs/jni 文件夹中,以便 jni 可以找到它。问题是我该怎么做?(如果可能的话)

最佳答案

幸好找到了方法。因为 .aar 本身是一个简单的 zip 文件,具有指定的结构 here .我所做的是将所有 .class 文件(在适当的包文件夹内)“jar”到 classes.jar 中,创建一个空文件夹“res”,将所有 .so 文件放入 jni 文件夹(具有适当的体系结构)并制作一个简单的 AndroidManifest。包含基本标签的 xml。然后我将它们打包到扩展名为 .aar 的文件中(如 mylib.aar)。我已经通过将 .aar 复制到另一个项目的 libs 文件夹并在应用程序的 build.gradle(如 compile(name:'mylib',ext:'aar') )。而且效果很好。

关于android - 如何为android制作一个包含 native 代码和纯java的库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38131213/

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