【发布时间】:2016-06-30 18:57:10
【问题描述】:
我已经为 android 的不同架构交叉编译了本机代码,并使其相应的 jni 包装类在 android studio 中工作。现在我想把它作为一个库提供。我有两个问题:
1)我可以只 jar .so 文件和 jni 文件来制作库吗?(不是 .aar,因为我的库只包含纯 java 和本机代码,没有 .xml、res 等 android 相关的东西)如果是这样,它的结构应该是什么?
2) 如果我无法创建 .jar 文件,那么剩下的就是创建 .aar 文件。这将包括使用 android studio。没有android studio可以吗?
编辑 1: 如果我 jar 文件,那么我不想提取 .so 然后使用它。如果我 jar 文件,然后将它(.jar)作为依赖项添加到我的项目中,那么它应该自动将 .so 放入我的 apk 中的 libs/jni 文件夹中,以便 jni 可以找到它。问题是我该怎么做?(如果可能的话)
【问题讨论】:
-
我相信您应该能够将 .so 文件和 Java 文件添加到库中。但是,为了能够使用 jar 中的 .so 文件,您需要将其解压缩到设备上的某个位置以加载库。我尚未对其进行测试,但如果我有机会确保它有效,我会发布答案。
-
你在说这个adamheinrich.com/blog/2012/12/… 吗?我不想那样做。如果我 jar 文件,然后将其作为依赖项添加到我的项目中,那么它应该自动将 .so 放入库中,以便 jni 可以找到它。
标签: android android-ndk java-native-interface android-library native-code